// pages/mine/company/edit/index.js

const app = getApp();
import {
  imgUpdate,
  addCompany,
  editCompany,
  companyDetail,
  delCompany
} from '../../../../utils/http'
// 图片压缩组件
import ImgCompress from '../../../../library/wx-image-compress/img-compress.js';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    v: app.globalData.v, //版本
    feihui: app.globalData.feihui, //非会
    lang: app.vSwitch(), //版本
    theme: app.cSwitch(), //主题色
    patterns: app.globalData.patterns, //是否为游客模式
    fileList: [],
    address: null, //地址
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    console.log(options)
    this.imgCompress = new ImgCompress(this, 1000, 1000);
    let t = this;
    // if (options && options.type == 'edit') {
    //   t.setData({
    //     type: options.type,
    //     id: options.id
    //   })
    //   t.getData();
    // }
    if (options.type == 'edit') {
      t.setData({
        type: options.type,
      })
    }
    if (options.id) {
      t.setData({
        id: options.id
      })
      t.getData();
      wx.setNavigationBarTitle({
        title: this.data.v || this.data.feihui ? '修改个人简介' : '修改公司简介',
      })
    } else {
      wx.setNavigationBarTitle({
        title: this.data.v || this.data.feihui ? '修改个人简介' : '添加公司简介',
      })
    }
  },

  getData() {
    let t = this;
    companyDetail({
      id: t.data.id
    }).then(r => {
      if (r.code == 0) {
        let info = r.data;
        t.setData({
          name: info.name,
          fileList: JSON.parse(info.pic),
          address: JSON.parse(info.address),
          introduce: info.introduce,
          position: info.position
        })
      }
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    this.setData({
      theme: app.cSwitch(), //主题色
      patterns: app.globalData.patterns, //是否为游客模式
      feihui: app.globalData.feihui, //是否非会人员
    })
    wx.setNavigationBarColor({
      frontColor: '#ffffff',
      backgroundColor: this.data.theme.tabbarColor,
    })
  },

  // 提交
  submit(e) {
    let t = this;
    console.log(e.detail.value);
    let _data = e.detail.value;
    if (!t.data.v) {
      if (!_data.name) {
        wx.showToast({
          title: '请输入' + (t.data.feihui ? '单位' : '公司') + '名称',
          icon: 'none'
        })
        return false;
      }
      if (!_data.position) {
        wx.showToast({
          title: '请输入所任职位',
          icon: 'none'
        })
        return false;
      }
      if (!t.data.address) {
        wx.showToast({
          title: '请选择' + (t.data.feihui ? '单位' : '公司') + '地址',
          icon: 'none'
        })
        return false;
      }
      _data.address = JSON.stringify(t.data.address);

      if (t.data.detailsAddress) {
        _data.detailsAddress = t.data.detailsAddress;
      }
    }


    // if (!t.data.fileList.length) {
    //   wx.showToast({
    //     title: '请上传图片',
    //     icon: 'none'
    //   })
    //   return false;
    // }
    _data.pic = JSON.stringify(t.data.fileList);

    if (!_data.introduce) {
      wx.showToast({
        title: '请输入自我介绍',
        icon: 'none'
      })
      return false;
    }


    console.log(_data)
    if (t.data.type == 'edit') {
      _data.id = t.data.id
      editCompany(_data).then(r => {
        if (r.code == 0) {
          wx.showToast({
            title: '提交成功，等待管理员审核',
            icon: 'none',
            mask: true
          })
          setTimeout(() => {
            wx.navigateBack({
              delta: 1,
            })
          }, 1500)
        }
      })

    } else {
      addCompany(_data).then(r => {
        if (r.code == 0) {
          wx.showToast({
            title: '提交成功，等待管理员审核',
            icon: 'none',
            mask: true
          })
          setTimeout(() => {
            wx.navigateBack({
              delta: 1,
            })
          }, 1500)
        }
      })

    }
  },

  del() {
    let t = this;
    wx.showModal({
      title: '提示',
      content: '确定要删除该' + (t.data.feihui ? '任职信息' : '公司') + '吗？',
      success(res) {
        if (res.confirm) {
          console.log('用户点击确定')
          delCompany({
            id: t.data.id
          }).then(r => {
            if (r.code == 0) {
              wx.showToast({
                title: '删除成功',
                mask: true
              })
              setTimeout(() => {
                wx.navigateBack({
                  delta: 1,
                })
              }, 1500)
            }
          })
        } else if (res.cancel) {
          console.log('用户点击取消')
        }
      }
    })
  },

  // 图片尺寸超出提示
  // onOversize(file) {
  //   wx.showToast({
  //     title: '上传图片超过限制，建议上传500kb以下图片',
  //     icon: 'none'
  //   })
  // },
  //上传组件-删除图片
  delSlideImg(e) {
    var f_index = e.detail.index;
    var imageData = this.data.fileList;
    imageData.splice(f_index, 1);
    this.setData({
      fileList: imageData
    })
  },

  //上传组件-图片上传
  async afterRead(e) {
    //上传组件名称
    var _this = this;
    const {
      file
    } = e.detail;
    console.log(file)
    for (var i of file) {
      //图片大于200k开启压缩
      if (i.size > 200 * 1024) {
        /* 
         * imgPath：图片路径
         * aspectRatio：图片宽高压缩比，0～1，默认0.5
         * quality：图片质量，0～1，默认0.5
         */
        await _this.imgCompress.compress(i.url, 1, 0.94).then(res => {
          console.log('压缩成功', res);
          _this.lbDoPostImg(res.compress.path);
        }).catch(e => {
          console.log('图片压缩失败', e);
          _this.lbDoPostImg(i.url);
        })
      } else {
        await _this.lbDoPostImg(i.url);
      }
      // _this.lbDoPostImg(i.url);
    }
  },
  lbDoPostImg(f_path) {
    var _this = this;
    imgUpdate({
      path: f_path
    }).then(res => {
      console.log(res)
      var res = JSON.parse(res);
      var data = res.data;
      //商品列表图[单图保存json格式，多图保存数组json格式]
      let arr = _this.data.fileList;
      arr.push({
        url: data.kpath
      })
      _this.setData({
        fileList: arr
      })
    })
  },


  goPage(e) {
    app.goPage(e.mark)
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    return app.share();
  }
})